The present invention relates to an object detection method for detecting a particular object such as a face from an image and in particular, relates to a technique effectively applied to a high-speed detection process of an object.
A method for detecting a particular object such as a face from an input image is, for example, described in “Rapid Object Detection using a Boosted Cascade of Simple Features,” P. Viola, M. Jones, Proceedings IEEE Conf. on Computer Vision and Pattern Recognition, 2001. This document suggests a highly accurate object detection method using three new methods: a set of image features called Haar capable of effectively analyzing a face, a feature selection process based on AdaBoost, and a cascade architecture for learning and detection.
However, when it is unclear wherein the input image an object exists, object judgement processes should be performed at various positions, which requires a plenty of processing time.
When an unknown number of objects of unknown sizes exist at unknown positions in the input image, magnification of the input image is modifies into various sizes and the object judgement process is performed at all the positions on the image.
For example, JP-A-2-159682 discloses a method for rapidly detecting an object from an input image where the information on the object is unknown. In the JP-A-2-159682, a process of performing template matching over the entire image (hereinafter, referred to as search process) is hierarchized in a plurality of levels. For each of the levels, an interval of pixels to be calculated in the template and a threshold value to transfer to a lower node level are set in advance, a correlation value is calculated at a rough position interval starting with the upper level having a smaller number of pixels to be calculated in the template. When a position where the correlation value is equal to or above the threshold value and higher than the periphery is found, a low-level search (calculation of an increased number of pixels to be calculated in the template is performed at a small positional interval) for the region around the position. If the correlation value of the final level exceeds the threshold value, it is judged that the object exists at that position. Thus, it is possible to perform object detection with smaller calculation amount than when performing the template matching on all the positions of the image.